//package com.fun.demo.redis;
//
//
//import redis.clients.jedis.*;
//
//import java.util.ArrayList;
//import java.util.List;
//
///**
// * lib\commons-pool-1.5.6.jar
// * lib\jedis-2.1.0.jar
// * */
//public class RedisUtil {
//
//
//    private static RedisUtil redisUtil;
//    private ShardedJedisPool shardedJedisPool;
//
//    String ip = "127.0.0.1";
//    int port = 6379;
//    String name = "Master";
//    String password = "kayang123";
//    int maxActive = 5;
//    int maxIlde = 2;
//    int timeOut = 100 * 1000;
//    int ucOutTime = 60;
//
//    private RedisUtil() {
//
//    }
//
//    public static RedisUtil getUnique() {
//        if (redisUtil == null) {
//            redisUtil = new RedisUtil();
//            redisUtil.shardedJedisPool = redisUtil.loadRedisServer();
//            return redisUtil;
//        }
//        return redisUtil;
//    }
//
//    private ShardedJedisPool loadRedisServer() {
//        JedisPoolConfig config = new JedisPoolConfig();
//        config.setMaxActive(maxActive);
//        config.setMaxIdle(maxIlde);
//        config.setMaxWait(timeOut);
//        List<JedisShardInfo> shards = new ArrayList<JedisShardInfo>();
//        JedisShardInfo info = new JedisShardInfo(ip, port, name);
//        info.setTimeout(timeOut);
//        info.setPassword(password);
//        shards.add(info);
//        shardedJedisPool = new ShardedJedisPool(config, shards);
//        shardedJedisPool.getResource().setex("kayang", 1, "This is a test for shardedJedisPool");//测试链接是否成功
//        return shardedJedisPool;
//    }
//
//    public void put(String key, String data) {
//        ShardedJedis jedis = null;
//        try {
//            jedis = redisUtil.shardedJedisPool.getResource();
//            jedis.setex(key, ucOutTime, data);
//
//        } catch (RuntimeException e) {
//            e.printStackTrace();
//            if (jedis != null) {
//                redisUtil.shardedJedisPool.returnBrokenResource(jedis);
//            }
//        } finally {
//            if (jedis != null) {
//                redisUtil.shardedJedisPool.returnResource(jedis);
//            }
//        }
//    }
//
//
//    public Object get(String key) {
//        ShardedJedis jedis = null;
//        try {
//            jedis = redisUtil.shardedJedisPool.getResource();
//            String jsonUc = jedis.get(key);
//            return jsonUc;
//        } catch (RuntimeException e) {
//            e.printStackTrace();
//            if (jedis != null) {
//                redisUtil.shardedJedisPool.returnBrokenResource(jedis);
//            }
//        } finally {
//            if (jedis != null) {
//                redisUtil.shardedJedisPool.returnResource(jedis);
//            }
//        }
//        return null;
//    }
//
//
//    public void remove(String key) {
//        ShardedJedis jedis = null;
//        try {
//            jedis = redisUtil.shardedJedisPool.getResource();
//            jedis.del(key);
//        } catch (RuntimeException e) {
//            e.printStackTrace();
//            if (jedis != null) {
//                redisUtil.shardedJedisPool.returnBrokenResource(jedis);
//            }
//        } finally {
//            if (jedis != null) {
//                redisUtil.shardedJedisPool.returnResource(jedis);
//            }
//        }
//    }
//
//
//    public boolean containsKey(String key) {
//        ShardedJedis jedis = null;
//        try {
//            jedis = redisUtil.shardedJedisPool.getResource();
//            return jedis.exists(key);
//
//        } catch (RuntimeException e) {
//            e.printStackTrace();
//            if (jedis != null) {
//                redisUtil.shardedJedisPool.returnBrokenResource(jedis);
//            }
//        } finally {
//            if (jedis != null) {
//                redisUtil.shardedJedisPool.returnResource(jedis);
//            }
//        }
//        return false;
//    }
//
//    public static void main(String[] args) {
//        ShardedJedisPool shardedJedisPool =  RedisUtil.getUnique().shardedJedisPool;
//        ShardedJedis shardedJedis = shardedJedisPool.getResource();
//
//        shardedJedis.set("amos",  "12345上山打老虎！");
//
//        System.out.println(shardedJedis.get("amos"));
//        System.out.println(shardedJedis.get("ky"));
//    }
//
//}
